package com.ruoyi.report_jl.domain.vo;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.ruoyi.common.annotation.ExcelDictFormat;
import com.ruoyi.common.convert.ExcelDictConvert;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.common.utils.BigDecimalUtil;
import com.ruoyi.report_jl.domain.ReportJlCjljgxrrkljlbBaDetail;
import com.ruoyi.report_tg.domain.vo.ExcelGeneralVo;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;


/**
 * 粗集料坚固性、软弱颗粒含量试验检测记录视图对象 report_jl_cjljgxrrkljlb_bs_info
 *
 * @author tll
 * @date 2024-05-23
 */
@Data
@ExcelIgnoreUnannotated
public class ReportJlCjljgxrrkljlbBsInfoVo extends ExcelGeneralVo {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @ExcelProperty(value = "id")
    private Long excelId;

    /**
     * 共几页
     */
    @ExcelProperty(value = "共几页")
    private Long totalPage;

    /**
     * 第几页
     */
    @ExcelProperty(value = "第几页")
    private Long page;

    /**
     * 记录编号
     */
    @ExcelProperty(value = "记录编号")
    private String jilbh;

    /**
     * 检测单位名称
     */
    @ExcelProperty(value = "检测单位名称")
    private String jiancdwmc;

    /**
     * 工程部位/用途
     */
    @ExcelProperty(value = "工程部位/用途")
    private String gongcbwyt;

    /**
     * 样品名称
     */
    @ExcelProperty(value = "样品名称")
    private String yangpmc;

    /**
     * 样品编号
     */
    @ExcelProperty(value = "样品编号")
    private String yangpbh;

    /**
     * 样品数量
     */
    @ExcelProperty(value = "样品数量")
    private String yangpsl;

    /**
     * 样品状态
     */
    @ExcelProperty(value = "样品状态")
    private String yangpzt;

    /**
     * 样品时间
     */
    @ExcelProperty(value = "样品时间")
    private String yangpsj;

    /**
     * 试验检测日期
     */
    @ExcelProperty(value = "试验检测日期")
    private String shiyjcrq;

    /**
     * 试验条件温度
     */
    @ExcelProperty(value = "试验条件温度")
    private String shiytjwd;

    /**
     * 试验条件湿度
     */
    @ExcelProperty(value = "试验条件湿度")
    private String shiytjsd;

    /**
     * 检测依据
     */
    @ExcelProperty(value = "检测依据")
    private String jiancyj;

    /**
     * 判定依据
     */
    @ExcelProperty(value = "判定依据")
    private String pandyj;

    /**
     * 主要仪器设备名称及编号
     */
    @ExcelProperty(value = "主要仪器设备名称及编号")
    private String zhuyyqsbmcjbh;

    /**
     * 附加声明
     */
    @ExcelProperty(value = "附加声明")
    private String fujsm;

    /**
     * 报表名称
     */
    @ExcelProperty(value = "报表名称")
    private String baobmc;

    /**
     * 报表编号
     */
    @ExcelProperty(value = "报表编号")
    private String baobbh;

    /**
     * 工程名称
     */
    @ExcelProperty(value = "工程名称")
    private String gongcmc;

    /**
     * 检测人
     */
    @ExcelProperty(value = "检测人")
    private String jiancr;

    /**
     * 记录人
     */
    @ExcelProperty(value = "记录人")
    private String jilr;

    /**
     * 复核人
     */
    @ExcelProperty(value = "复核人")
    private String fuhr;

    /**
     * 日期
     */
    @ExcelProperty(value = "日期")
    private Date riq;

    /**
     * 备注
     */
    @ExcelProperty(value = "备注")
    private String remark;

    /**
     * 试样总质量行1
     */
    @ExcelProperty(value = "试样总质量行1")
    private BigDecimal shiyzzlItem1;

    /**
     * 公称粒级(mm)行1
     */
    @ExcelProperty(value = "公称粒级(mm)行1")
    private String gongcljItem1;

    /**
     * 试样各粒级颗粒总质量m1(g)行1
     */
    @ExcelProperty(value = "试样各粒级颗粒总质量m1(g)行1")
    private BigDecimal shiygljklzzlItem1;

    /**
     * 试验后各粒级完好颗粒总质量m2(g)行1
     */
    @ExcelProperty(value = "试验后各粒级完好颗粒总质量m2(g)行1")
    private BigDecimal shiyhgljklzzlItem1;

    /**
     * 软弱颗粒含量测定值(%)行1
     */
    @ExcelProperty(value = "软弱颗粒含量测定值(%)行1")
    private BigDecimal ruanrklhlczItem1;

    /**
     * 试样总质量行2
     */
    @ExcelProperty(value = "试样总质量行2")
    private BigDecimal shiyzzlItem2;

    /**
     * 公称粒级(mm)行2
     */
    @ExcelProperty(value = "公称粒级(mm)行2")
    private String gongcljItem2;

    /**
     * 试样各粒级颗粒总质量m1(g)行2
     */
    @ExcelProperty(value = "试样各粒级颗粒总质量m1(g)行2")
    private BigDecimal shiygljklzzlItem2;

    /**
     * 试验后各粒级完好颗粒总质量m2(g)行2
     */
    @ExcelProperty(value = "试验后各粒级完好颗粒总质量m2(g)行2")
    private BigDecimal shiyhgljklzzlItem2;

    /**
     * 软弱颗粒含量测定值(%)行2
     */
    @ExcelProperty(value = "软弱颗粒含量测定值(%)行2")
    private BigDecimal ruanrklhlczItem2;

    /**
     * 试样总质量行3
     */
    @ExcelProperty(value = "试样总质量行3")
    private BigDecimal shiyzzlItem3;

    /**
     * 公称粒级(mm)行3
     */
    @ExcelProperty(value = "公称粒级(mm)行3")
    private String gongcljItem3;

    /**
     * 试样各粒级颗粒总质量m1(g)行3
     */
    @ExcelProperty(value = "试样各粒级颗粒总质量m1(g)行3")
    private BigDecimal shiygljklzzlItem3;

    /**
     * 试验后各粒级完好颗粒总质量m2(g)行3
     */
    @ExcelProperty(value = "试验后各粒级完好颗粒总质量m2(g)行3")
    private BigDecimal shiyhgljklzzlItem3;

    /**
     * 软弱颗粒含量测定值(%)行3
     */
    @ExcelProperty(value = "软弱颗粒含量测定值(%)行3")
    private BigDecimal ruanrklhlczItem3;

    /**
     * 软弱颗粒含量测定值(%)平均值
     */
    @ExcelProperty(value = "软弱颗粒含量测定值(%)平均值")
    private BigDecimal ruanrklhlczPjz;

    /**
     * 设备ids
     */
    @ExcelProperty(value = "设备ids")
    private String shebIds;

    @ExcelProperty(value = "子表")
    private List<ReportJlCjljgxrrkljlbBaDetailVo> detailList;

    @ExcelProperty(value = "报表编号集")
    private List<String> baobbhList;

    public void setShiyzzlItem1(BigDecimal shiyzzlItem1) {
        this.shiyzzlItem1 = BigDecimalUtil.stpTrailZero(shiyzzlItem1);
    }

    public void setShiygljklzzlItem1(BigDecimal shiygljklzzlItem1) {
        this.shiygljklzzlItem1 = BigDecimalUtil.stpTrailZero(shiygljklzzlItem1);
    }

    public void setShiyhgljklzzlItem1(BigDecimal shiyhgljklzzlItem1) {
        this.shiyhgljklzzlItem1 = BigDecimalUtil.stpTrailZero(shiyhgljklzzlItem1);
    }

    public void setRuanrklhlczItem1(BigDecimal ruanrklhlczItem1) {
        this.ruanrklhlczItem1 = BigDecimalUtil.stpTrailZero(ruanrklhlczItem1);
    }

    public void setShiyzzlItem2(BigDecimal shiyzzlItem2) {
        this.shiyzzlItem2 = BigDecimalUtil.stpTrailZero(shiyzzlItem2);
    }

    public void setShiygljklzzlItem2(BigDecimal shiygljklzzlItem2) {
        this.shiygljklzzlItem2 = BigDecimalUtil.stpTrailZero(shiygljklzzlItem2);
    }

    public void setShiyhgljklzzlItem2(BigDecimal shiyhgljklzzlItem2) {
        this.shiyhgljklzzlItem2 = BigDecimalUtil.stpTrailZero(shiyhgljklzzlItem2);
    }

    public void setRuanrklhlczItem2(BigDecimal ruanrklhlczItem2) {
        this.ruanrklhlczItem2 = BigDecimalUtil.stpTrailZero(ruanrklhlczItem2);
    }

    public void setShiyzzlItem3(BigDecimal shiyzzlItem3) {
        this.shiyzzlItem3 = BigDecimalUtil.stpTrailZero(shiyzzlItem3);
    }

    public void setShiygljklzzlItem3(BigDecimal shiygljklzzlItem3) {
        this.shiygljklzzlItem3 = BigDecimalUtil.stpTrailZero(shiygljklzzlItem3);
    }

    public void setShiyhgljklzzlItem3(BigDecimal shiyhgljklzzlItem3) {
        this.shiyhgljklzzlItem3 = BigDecimalUtil.stpTrailZero(shiyhgljklzzlItem3);
    }

    public void setRuanrklhlczItem3(BigDecimal ruanrklhlczItem3) {
        this.ruanrklhlczItem3 = BigDecimalUtil.stpTrailZero(ruanrklhlczItem3);
    }

    public void setRuanrklhlczPjz(BigDecimal ruanrklhlczPjz) {
        this.ruanrklhlczPjz = BigDecimalUtil.stpTrailZero(ruanrklhlczPjz);
    }
}
